package com.codrim.cs.data.rpc;

import com.codrim.cs.data.rpc.contants.RpcServiceVersions;
import com.codrim.cs.data.rpc.contants.RpcVersionSuffix;
import com.codrim.cs.data.rpc.dto.param.BillCsOfferParam;
import com.codrim.cs.data.rpc.dto.param.OfferDataParamDTO;
import com.codrim.cs.data.rpc.dto.param.PageResult;
import com.codrim.cs.data.rpc.dto.param.StatementOfferDTO;
import com.codrim.cs.data.rpc.dto.result.OfferDataDTO;

import java.util.List;
import java.util.Map;

/**
 * Rpc service for Offer data
 *
 * @author Liang.Zhuge on 17/08/2017.
 */
public interface OfferDataService {

    String RPC_VERSION = RpcServiceVersions.VERSION + RpcVersionSuffix.VERSION_SUFFIX;

    /**
     * 按广告纬度, 统计起止时间范围内的所有符合条件的数据
     *
     * @param param 参数
     * @return 广告统计数据
     */
    List<OfferDataDTO> offerData(OfferDataParamDTO param);

    PageResult<StatementOfferDTO> findStatementAdvOfferByParam(Map param, int zoneId);

    /**
     * 不对接广告数据
     */
    List<StatementOfferDTO> findAdvOfferManualByParam(BillCsOfferParam param);
}
